Systems and methods for location assistance with personal area network devices

ABSTRACT

Implementations relate to systems and methods for location assistance using devices ( 104 ) in a personal area network (PAN). In one scenario, a user may use two separate location-enabled devices, such as a wearable personal device ( 102 ) and a cellular telephone device ( 104 ). In cases, one of those devices may have reached a higher or farther-developed state in terms of generating or storing location information ( 108 ) for the user&#39;s current position, as compared to the opposite device. This can take place, for instance, when the first (e.g. wearable) device ( 102 ) is first turned on. The two devices use platforms and techniques to exchange location information and carry out GPS or other operations to furnish the device that is lagging in position processing progress with assistance which will speed up or otherwise enhance the position fix for that device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.14/050,753, filed Oct. 10, 2013, the entire contents of which is hereinincorporated by reference.

FIELD

The present teachings relate to systems and methods for locationassistance using two or more personal area network (PAN) devices, andmore particularly, to platforms and techniques for allowing one deviceequipped with a Global Navigation Satellite System (GNSS) to communicatewith another device having positioning capabilities in order to speed upthe acquisition of location information, and the generation of aposition fix.

BACKGROUND

In the field of personal electronic devices, certain recreationaldevices and services capture and present a user's geographic positionusing a GNSS receiver. As one example, a sports watch or other wearabledevice may contain, for instance, a Global Positioning System (GPS) chipor module to allow that device to receive signals from GPS satellites,go through the necessary computation of ephemeris and other data, andproduce a GPS position “fix,” or precise location reading, oftenincluding geocoordinates (latitude, longitude, and optionally altitude)and direction of travel.

When a sports watch or other personal device with a GNSS receiver hasfirst been turned on, or has recently started receiving usable GPSsignals (e.g., after being obscured by trees or buildings), the GPSreceiver needs a certain amount of time to re-start and begin takingposition fixes. That start-up delay can be on the order of severalminutes. During that start-up period, the device will typically consumea significant amount of battery power, because a significant amount ofradio frequency reception and position computation activity must takeplace.

In those scenarios and others, a GPS or other GNSS-equipped personaldevice could benefit by tapping the already-generated locationinformation of a nearby device, if that nearby device is GNSS-equippedand is located in range of a wireless connection to the personal device.

BRIEF DESCRIPTION OF DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate implementations of the presentteachings and together with the description, serve to explain theprinciples of the present teachings. In the figures:

FIG. 1 illustrates an overall environment which can be used in systemsand methods for location assistance using tethered devices, according tovarious implementations;

FIG. 2 illustrates various location processing states and associateddata that a device can occupy and use, according to variousimplementations; and

FIG. 3 illustrates a flowchart of comparative state and locationassistance processing, according to various implementations; and

FIG. 4 illustrates various hardware, software, and other resources thatcan be used in a position-enabled device, according to variousimplementations.

DETAILED DESCRIPTION OF IMPLEMENTATIONS

Implementations of the present teachings relate to systems and methodsfor location assistance using personal area network devices. Moreparticularly, implementations relate to platforms and techniques forestablishing a short-range communication link between a first device anda second device, and allowing the two devices to exchange locationinformation to determine whether one device or the other has moreup-to-date location information. If so, the more up-to-date informationcan be shared with the remaining device to speed up position processingon that remaining device.

Reference will be made in detail to exemplary implementations of thepresent teachings, which are illustrated in the accompanying drawings.Where possible, the same reference numbers will be used throughout thedrawings to refer to the same or like parts.

FIG. 1 illustrates an overall environment 100 in which systems andmethods for location assistance using personal area network (PAN)devices can operate, according to aspects of the disclosure. As shown, afirst device 102 and a second device 104 can operate in proximity toeach other. The first device 102 can be or include a personal electronicdevice equipped with a GPS module 118, which can be or include a GPSradio frequency chip, software to acquire GPS data, and/or otherGPS-related resources. While some implementations employ a GPS-basedservice, it will be appreciated that other GNSS systems can be used,such as, for example, a GLONASS-based system, a Galileo-based system, aBeidou-based system, and/or others.

The first device 102 can include a processor, memory, software, and/orother hardware, software, or service resources. The first device 102can, in implementations, be or include a wearable device, such as awatch or glasses, a device which can be clipped to a belt or worn on astrap, and/or other mobile, portable, and/or wearable components. Inimplementations, the first device 102 may not be equipped with awireless wide area network (WWAN) transceiver and thus lacks cellularand WiMAX capability. The first device 102 may, however, be equippedwith a wireless local-area network (WLAN) interface 130. The WLANinterface 130 can be or include a WiFi module or chip configured tosupport data communications with an access point 116 associated with ahome, business, or other wireless local area network (WLAN). It will beunderstood, however, that the WLAN interface 130 and WiFi™ or other WLANconnectivity are optional components of the first device 102.

The first device 102 can further be equipped with a personal areanetwork (PAN) interface 122. The PAN interface 122 can be or include anyshort-range communications link, such as, for example, a Bluetooth™ orWiFi Direct™ interface, an NFC interface, another type of short-rangeradio frequency link, an optical link, an audio-data link, a USB cable,or the like.

In implementations as shown, a second device 104 can operate in the sameenvironment 100 as the first device 102, for instance, in the samegeneral proximity as, or held by the same user operating, the firstdevice 102. The distance between the first device 102 and the seconddevice 104 can be within a range of error of the GNSS of the firstdevice 102, which can be on the order of a few centimeters, a fewdecimeters, a few meters, or other distances, depending on the GNSS andits implementation in the first device 102. The second device 104 can beor include a personal electronic device equipped with a GPS module 120that can likewise be or include a GPS chip, software, and/or relatedresources. It will be understood, again, that other GNSS-based modulesor resources can be used instead of GPS modules or resources. The seconddevice 104 can similarly include a processor, memory, software, and/orother hardware, software, or service resources. The second device 104can include a personal area network (PAN) interface 124 compatible withthe PAN interface 122 of the first device 102, which can similarly be orinclude a Bluetooth™ interface, a WiFi Direct™ interface, or other typeof short-range radio frequency or other communications link.

In implementations, the second device 104 can, in addition to the notedGPS and short-range communication capabilities, also be equipped with awireless wide-area network (WWAN) interface 126. The WWAN interface 126can be or include a cellular module or chip or other resources,configured to support wireless voice and/or data communications with abase station 112 associated with a wide area network, such as a 4G LTE(Long Term Evolution), 3G CDMA (Code Divisional Multiple Access), 2G GSM(Global System for Mobile Communications), WiMAX (IEEE 802.16), and/orother cellular or wireless wide area network.

In implementations, the second device 104 can, further, be equipped witha wireless local area network (WLAN) interface 128. The WLAN interface128 can be or include a WiFi™ module or chip configured to permit datacommunications with an access point 116, such as an access point 116operating under an IEEE 802.11 or other wireless local area networkstandard. In the example of FIG. 1, both devices 102, 104 have WLANinterfaces 130, 128 and are wirelessly communicating with the same WLANaccess point 116. In situations where both devices have active WLANinterfaces, they may wirelessly communicate with the same or differentWLAN access points. Note that the WLAN interface 128 and WiFi™ or otherWLAN connectivity, along with the WWAN interface 126 and 4G and/or otherconnectivity, are optional components of the second device 104. Whilethose types or classes of networking connections or resources areoptional in the first device 102 and the second device 104, in bothdevices, in general, a PAN interface and GNSS-based interface will beincorporated, as shown.

In aspects, the second device 104 can be referred to as the “tethered”device, but it will be appreciated that in a given situation, either offirst device 102 or second device 104 can act to support and feedlocation information to the opposite device, and serve as the tetheredunit.

In the environment 100 as shown, the first device 102 and second device104 can, in general, communicate and cooperate to exchange locationinformation related to the position of each device, and attempt to usethat information to accelerate, advance, speed up, shorten, or otherwiseenhance or improve the process of generating a position fix of one orthe other device. The generated position fix may include: geocoordinatessuch as latitude, longitude, and optionally altitude; direction oftravel; ground speed; vertical speed; accuracy information for any ofthese elements; and the precise method used to compute the position fix.In aspects, and again merely generally, logic built into the firstdevice 102 and second device 104 can operate to identify which of thefirst device 102 and second device 104 is “ahead” of the other device interms of acquiring location information and/or performing calculationson that location information to acquire a position fix. The device inthat “ahead” state can then pass its location information to the otherdevice to assist the “behind” device in completing position operationsof its own.

In general terms, as also shown in FIG. 1, a user can turn on, activate,and/or operate the first device 102 in an already-powered state, and thefirst device 102 can initiate a series of exchanges with the seconddevice 104 as a tethered device to determine whether the second device104 can assist the first device 102 by providing location information ina manner that will speed up the process of generating that position fixin the first device 102. While further details are described inconnection with FIG. 3, in general, the first device 102 can issue arequest 106 and/or other message or query to the second device 104 viathe short-range communication link established between the respectivePAN interface 122 and PAN interface 124. If the logic or processingfollowed by the first device 102 and second device 104 indicates thatthe second device 104 is capable of speeding up the location operationsof the first device 102, the second device 104 can, in general, respondwith a transmission of location information 108 from the second device104 to the first device 102. The first device 102 can then use thelocation information 108 to speed up, accelerate, and/or otherwiseenhance or improve the calculation of a position fix by the first device102.

In aspects, the location information 108 can relate to any aspect ofGNSS-based or other data stored or generated by the second device 104that can be used by the first device 102 to improve the computation ofthe position of the first device 102. In the case of GPS data, thelocation information 108 can include time information, which can includetime synchronization data used on time signals arriving from GPSsatellites, and for other purposes. The location information 108 canalso include almanac information which describes orbital information forthe fleet of GPS satellites as a whole with relatively coarse accuracy,which may be valid or accurate for weeks or months. The locationinformation 108 can also include ephemeris information, which allows thefine-grained calculation of the position of each satellite in orbit tonecessary precision, and which may remain accurate for approximately twoto four hours after that information is downloaded from a satellite.

Other types of information can be included in the location information108 to assist the determination of position by the first device 102, andthose other types of information can include, for example, estimatedvalues for position, time, ephemeris, and/or other quantities related toposition processing that are available to the second device 104. Thosefurther types of data can include position estimates based on thelatitude, longitude, and/or altitude values for the device 104 or forfixed points such as the base station 112 and/or access point 116. Thelocation information 108 can likewise include time estimates, as well asestimated ephemeris data that are available to the second device 104,such as from the base station 112, the access point 116, servers in thewireless wide area network, servers in the Internet 132, and/or othersources. Any or all of those other types of location information can beused to assist the positioning process used by the first device 102 togenerate a position. In general, the amount, currency, and degree ofprecision available to each of the first device 102 and the seconddevice 104 allows the two devices to determine whether each one is in acold, warm, or hot location processing state, indicating the validity orcurrency of the location information 108 available to each device andwhich can be shared to or from each device.

According to implementations, and as shown in FIG. 2, in general a “hot”location processing state occupied by either of the first device 102 orsecond device 104 indicates that that device has valid or current datafor both time and broadcast ephemeris, which in general may allowimmediate or rapid calculation of a position fix.

In general, a “warm” location processing state can reflect any one of aset of states wherein time data is valid without valid broadcastephemeris data, or where estimated ephemeris data is available(regardless of valid time), or where valid broadcast ephemeris data isavailable without valid time data.

A “cold” location processing state can indicate that the device has novalid data available to it, such as when the device is first turned onand has not begun location processing, or when the device enters areboot state following a fault or other condition. For convenience ofreference, any state besides a “hot” state can be referred to as a“non-hot” state herein.

GPS processing can, in general, depend on whether a device is in a cold,warm, or hot location processing state. According to implementations, adevice 102, 104 can enter or activate a cold state upon power-up orwake-up. A cold start can be performed every time after the deviceand/or its GPS module is turned off without storage of locationinformation in a persistent memory (e.g., when no backup power supply isconnected). During a cold start, almanac and ephemeris data have to bedownloaded first from the GPS satellites to the device GPS module beforea position fix can be acquired.

Assuming that location information is stored when a GPS module ispowered off (e.g., a proper backup power source is provided), a device102, 104 can perform a hot start (provided valid time data is available)if the associated GPS module is powered on within a predetermined timeframe (e.g., two hours) after the device and/or GPS operations werepreviously turned off. This is the case because accurate ephemeris andalmanac data can be retrieved from flash or other memory of the GPSmodule.

A warm start, in general, can be performed if the device and/orassociated GPS module stores previous location information and isstarted after a predetermined (e.g., two hour) time frame, as some butnot all of the GPS satellite data has to be refreshed.

The first device 102 and second device 104 can use comparativeinformation about those associated location processing states toexchange location information 108 useful to one or the other device tospeed up location processing, as described herein.

More specifically, processing to compare location processing states andexchange data can be carried out using a process 300, such as shown inFIG. 3. Processing begins when a first device 102, 104 enters a locationmode 302. Although any device in a personal area network can enter thelocation mode and start this process 300, for the sake of clarity, thisdescription will consider the first device 102 as the subject device andconsider the second device 104 as one of the tethered devices in thePAN. If supported, the first device 102 (as the subject device) candownload 304 using a WLAN or WWAN communication link and/or generate anyassistance data that may be initially available, such as predictedephemeris data. In many smartphone devices, location assistance data isgenerally downloaded at least once a day from a WWAN base station 112 tohelp speed up the process of obtaining position fixes. Informationprovided at a frequency of once a day generally reflects estimatedephemeris data generated by an associated server. Estimated (orpredicted) ephemeris data can be or include client/server-generatedephemeris data for GPS satellites, which can be valid for a certainperiod of time, such as 7-10 days. The assistance data can likewise orinstead include broadcast ephemeris data, such as ephemeris datatransmitted by GPS satellites, which may or may not be slightly out ofdate but remembered by the first device 102. Information provided at afrequency of more than once a day generally reflects broadcast ephemerisdata requested from, or received by way of, a WWAN base station 112. Inimplementations, assistance data can also or instead be downloaded to asmartphone or other device each time a location-based application (e.g.,navigation, mapping, etc.) is launched.

The first device can determine 306 whether a second device 104 isconnected or tethered to the first device 102 over a short-rangecommunication network (e.g., via the PAN interface 122 and PAN interface124). If the determination 306 is no, processing proceeds to branch 310alone, and the first device attempts to obtain a position fix on itsown, as will be explained later in more detail.

If the determination 306 is yes, processing can proceed to anotherdetermination 308 of whether the first device 102 is in a hot, warm, orcold location processing state, as defined herein. If the determination308 is that the first device 102 is in a hot state, processing alsoproceeds to branch 310 alone. In other words, processing proceeds tobranch 310 alone when no tethered second device is available (i.e., viadetermination 306 NO) and when a tethered second device is available butthe first device already has both valid time and valid broadcastephemeris data (i.e., via determination 308 HOT).

If the first device 102 is tethered to a second GNSS device and in aNON-HOT state, however, processing proceeds to both branches 310 and 318in parallel using both a stand-alone positioning process in first device102, and attempted assistance from the second device 104.

Continuing with branch 318, which occurs in a parallel or concurrentfashion with branch 310 when the first device 102 is tethered to asecond device 104 and in a NON-HOT state, the first device 102 cantransmit 318 a request 106 to the second device 104 and request locationinformation 108 from the second device 104. The request may ask for anyavailable location information such as time information, estimated timeinformation, time synchronization data, almanac information, ephemerisdata, estimated ephemeris data, position information, and/or estimatedposition information. Alternately, the request may ask for specificinformation such as any available time information (actual orestimated), ephemeris data (actual or estimated), and positioninformation (actual or estimated).

A determination can be made whether location information 108 has beenreceived 320 by the first device 102 from the second device 104.Location information may not be received if there are communicationissues within the PAN, or if the second device 104 is also in a coldstate and has no valid time, ephemeris, or position information. If nolocation information has been received 320, processing can enter a loopback to the request 318 until location information 108 is received bythe first device 102 from the second device 104. In implementations, atimer and time-out condition can be added to the loop back and/or thereceived 320 determination to avoid endless loops, race conditions, orother faults.

If location information was received 320 by the first device 102 fromthe second device 104, any available position information (actual orestimated) from the second device can be displayed 322 on the firstdevice 102 and/or provided to one or more software applicationsoperating on the first device 102, such as mapping, navigation, andlocation-based services software applications. Any received locationinformation is now available to branch 310 to be carried out by firstdevice 102, as will be explained below.

After the tethering and location processing state determinations 306,308, the first device 102 initiates an attempt 310 to acquire a positionfix using its GPS module 118. Note that branch 310 occurs regardless ofwhether the first device 102 is tethered (or not) and regardless oflocation processing state. The position fix process can be initiatedusing GPS signals, and/or can be made using a WLAN service, such as aWiFi™ connection, via the WLAN interface 130. A determination can bemade whether a position fix 314 has been obtained. If the GNSS receiverreaches a determination that a position fix 314 has not been obtained,the first device 102 checks to see if location information from atethered device was received and updates 312 its own locationinformation, if any tethered device location information was received.Then, the process returns to branch 310 to attempt a position fix again.Note that, if the first device is traversing branch 310 alone, notethered device location information will be requested or receivedbecause only branch 318 requests tethered device location information.

If a position fix has been obtained 314, the position fix and/orposition information portions of the location information 108 can bedisplayed 322 on a display screen of the first device 102, and/orprovided to one or more software applications operating on the firstdevice 102, such as mapping, navigation, and location-based servicessoftware applications.

This type of location mode as describe with reference to FIG. 3 allows aGNSS-enabled first device 102 with a PAN transceiver to request and uselocation information from a nearby PAN-connected GNSS device. Thissupports a faster position fix for the first device 102. Note that, fora PAN network with two or more GNSS-equipment devices, each device mayconsider itself the first GNSS device and each implement a processsimilar to FIG. 3 to request location information from one or more ofthe tethered GNSS devices in the PAN. In implementations, it may benoted that the capture of broadcast ephemeris data by the first device102 or second device 104 may be more advantageous than other types ofdata, since decoding broadcast ephemeris data requires a higher signalto noise ratio (SNR), 14 dB or more, than decoding and/or aligning timedata (part of the PRN code in GPS systems).

FIG. 4 illustrates exemplary hardware, software, and other resourcesthat can be used in various implementations of location assistance usingtethered devices. In implementations as shown, the first device 102 caninclude a hardware platform including processor 408 communicating withmemory 406, such as electronic random access memory, operating undercontrol of or in conjunction with the operating system 418. Theoperating system 418 can be, for example, a distribution of the Android™operating system available from Google, Inc., Mountain View, Calif., adistribution of the Linux™ operating system, the Unix™ operating system,or other open-source or proprietary operating system or platform. Thefirst device 102 can operate to generate and display positioninformation 428 on a display 420 in conjunction with mapping,navigation, or location-based services software applications, usingplatforms and techniques described herein.

The processor 408 can further communicate with a PAN transceiver 402,via which the electronic device 102 can transmit or receive wirelesssignals using antenna element 422, and using those signals establish aconnection to one or more networks (not shown), such as the Internet orother public or private networks. In some implementations, theconnection to the one or more networks via the antenna element 422 andother resources can be or include a broadband wireless connection, aWiFi™ connection via WLAN interface 430, and/or wireless data connection(not shown). It may be noted that the WLAN interface 430 is optional(see FIG. 1 elements 128, 130) and can be removed in someimplementations, and that a wireless wide area network (WWAN) interfacecan be optionally be included or added (see FIG. 1 element 126).Likewise, while radio frequency wireless connections are described, itwill be appreciated that first device 102 can also connect with one ormore networks, access points, and/or services via wired or other typesof wireless connections, such as Ethernet™ connections, USB connections,infrared connections, or others.

The processor 408 can, in general, be or include one or moregeneral-purpose and/or special-purpose processors, cores, and/or relatedlogic, and can be programmed or configured to execute and/or control theoperating system 418, a set of system resources including an applicationprogramming interface (API) 410, a set of applications 412 such asmapping, navigation, or location-based services applications, and/orother hardware, software, logic, services, and/or resources. Otherconfigurations of the first device 102, associated network connections,and other hardware, software, and other resources or services arepossible. In implementations, the second device 104 can be or includethe same or similar hardware, software, and service resources as thefirst device 102, or in implementations can be or include different oradditional hardware, software, and/or services.

The foregoing description is illustrative, and variations inconfiguration and implementation may occur to persons skilled in theart. For example, while implementations have been described in which thefirst device 102 communicates with one additional device in the form ofthe second device 104 to generate improved or accelerate position fixes,in implementations, the first device 102 can communicate with two ormore additional devices to achieve the same enhanced operations.Similarly, the location assistance provided by the second PAN-connectedGNSS device 104, or two or more additional PAN-connected GNSS devices orsources, can be used to generate enhanced or speeded-up position fixesby more than one GNSS device in a cold or otherwise less-advancedlocation processing state. Other resources described as singular orintegrated can in implementations be plural or distributed, andresources described as multiple or distributed can in implementations becombined. The scope of the present teachings is accordingly intended tobe limited only by the following claims.

What is claimed is:
 1. A method comprising: initiating, by a wearabledevice, a positioning process for determining a location of the wearabledevice, wherein the wearable device is connected to another device via apersonal area network connection; determining, by the wearable device,an initial location of the wearable device; sending, by the wearabledevice, to the other device, and using the personal area networkconnection, a request for location information; receiving, by thewearable device and from the other device, the location information; andgenerating, by the wearable device and based in part on the locationinformation received from the other device and the initial location,position information for the wearable device.
 2. The method of claim 1,wherein determining the initial location of the wearable devicecomprises determining the initial location using at least one of aglobal navigation satellite system-based process, an assisted globalnavigation satellite system-based process, a radio triangulation-basedprocess, a cellular-network based process, or a process based on adetected location of a wireless access point used by the first device.3. The method of claim 1, wherein the request for location informationincludes a request for at least one of time data from the other device,ephemeris data from the other device, or position data from the otherdevice.
 4. The method of claim 3, wherein the ephemeris data comprisesestimated ephemeris data.
 5. The method of claim 3, wherein theephemeris data comprises broadcast ephemeris data.
 6. The method ofclaim 3, wherein the position data comprises estimated position data. 7.The method of claim 6, wherein the estimated position data comprisesposition data estimated by at least one of cellular base stationtrilateration, wireless local area network access point trilateration,or global navigation satellite system trilateration.
 8. The method ofclaim 1, wherein initiating the positioning process is in response toinitiating one of a start-up process of the wearable device or a wake-upprocess of the wearable device.
 9. The method of claim 1, wherein theother device comprises one of a cellular telephone having a globalnavigation satellite system module, a navigation device having a globalnavigation satellite system module, or a computing device having aglobal navigation satellite system module.
 10. A wearable device,comprising: a global navigation satellite system module; and a processorcommunicatively coupled to the global positioning system module, theprocessor being configured to: initiate a positioning process fordetermining a location of the wearable device, wherein the wearabledevice is connected to another device via a personal area networkconnection; determine, using the global navigation satellite systemmodule, an initial location of the wearable device; send, to anotherdevice and using the personal area network connection, a request forlocation information; receive, from the other device, the locationinformation; and generate, based in part on the location informationreceived from the other device and the initial location, positioninformation for the wearable device.
 11. The wearable device of claim10, wherein the processor is further configured to: determine theinitial location of the wearable device using at least one of a globalnavigation satellite system-based process, an assisted global navigationsatellite system-based process, a radio triangulation-based process, acellular-network based process, or a process based on a detectedlocation of a wireless access point used by the first device.
 12. Thewearable device of claim 10, wherein the request for locationinformation includes a request for at least one of time data from theother device, ephemeris data from the other device, or position datafrom the other device.
 13. The wearable device of claim 12, wherein theephemeris data comprises estimated ephemeris data.
 14. The wearabledevice of claim 12, wherein the ephemeris data comprises broadcastephemeris data.
 15. The wearable device of claim 12, wherein theposition data comprises estimated position data.
 16. The wearable deviceof claim 15, wherein the estimated position data comprises position dataestimated by at least one of cellular base station trilateration,wireless local area network access point trilateration, or globalnavigation satellite system trilateration.
 17. The wearable device ofclaim 10, wherein the processor is configured to initiate thepositioning process by at least being configured to initiate thepositioning process in response to initiating one of a start-up processof the wearable device or a wake-up process of the wearable device. 18.The wearable device of claim 10, wherein the global navigation satellitesystem module comprises at least one of a global positioning systemmodule, a global navigation satellite system module, a Galileo module,or a Beidou module.
 19. The wearable device of claim 10, wherein theother device comprises one of a cellular telephone having a globalnavigation satellite system module, a navigation device having a globalnavigation satellite system module, or a computing device having aglobal navigation satellite system module.